package com.gqh.weather.domain.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;

import lombok.Getter;
import lombok.Setter;

/**
 * @description 学生答题记录实体类
 * @author AI
 * @date 2025-09-21
 */
@Getter
@Setter
@TableName("zh_student_answer")
public class StudentAnswer {

    /**
     * 自增ID
     */
    @TableId
    private Integer id;

    /**
     * 学生id
     */
    private Integer studentId;

    /**
     * 主任务id
     */
    private Integer taskId;

    /**
     * 试卷id
     */
    private Integer paperId;

    /**
     * 试卷类型
     */
    private Integer paperType;

    /**
     * 学校id
     */
    private Integer schoolId;

    /**
     * 城市码
     */
    private String citycode;

    /**
     * 答案
     */
    private String answer;

    /**
     * 客观题分数
     */
    private Double score;

    /**
     * 客观题评分数据
     */
    private String scoreData;

    /**
     * 主观题分数
     */
    private Double zgscore;

    /**
     * 主观题评分数据
     */
    private String zgscoreData;

    /**
     * 删除状态(0正常 1删除)
     */
    @TableLogic
    private Integer isDeleted = 0;

    /**
     * 创建时间
     */
    @JsonIgnore
    @TableField(value = "created_time", fill = FieldFill.INSERT)
    private Long createdTime;

    /**
     * 更新时间
     */
    @JsonIgnore
    @TableField(value = "updated_time", fill = FieldFill.INSERT_UPDATE)
    private Long updatedTime;

    public Double getTotalScore() {
    	return score + zgscore;
    }
}